clear all

syms  x y q12_re q12_im q  mu1 mu2 mu3 real

lambda = -1+2i;


w = 1+3i;
w = w/abs(w)*0;
w=1;
%syms w
r = solve(real(lambda^2) + q + real(w*(q12_re+i*q12_im)) -x^2+y^2,... 
    abs(lambda)^4 +2*abs(lambda)^2*q - (x^2+y^2)^2 + ...
    real(lambda)^2*real(w)*q12_re - real(lambda)^2*imag(w)*q12_im - 2*real(lambda)*imag(lambda)*real(w)*q12_im - 2*real(lambda)*imag(lambda)*imag(w)*q12_re - imag(lambda)^2*real(w)*q12_re+imag(lambda)^2*imag(w)*q12_im     ...
    + (1-abs(w)^2)*(q^2 - (q12_re^2 + q12_im^2)) ,... 
    q^2 - (q12_re^2 + q12_im^2), ... 
    2*x + 2*mu1*x+4*mu2*x^3,...
    -mu1-2*mu2*abs(lambda)^2 + 2*mu3*q,... 
    -mu1*real(w) - mu2*(real(lambda)^2*real(w) - 2*real(lambda)*imag(lambda)*imag(w) - imag(lambda)^2*real(w) ) - 2*mu3*q12_re,...
     mu1*imag(w) + mu2*(real(lambda)^2*imag(w) + 2*real(lambda)*imag(lambda)*real(w) - imag(lambda)^2*imag(w) ) - 2*mu3*q12_im,...
    x, q, q12_re, q12_im, mu1,mu2,mu3);
%double(r.x)

%% vyuzitim derivace v matlabu
clear all

syms  x y q12_re q12_im q  mu1 mu2 mu3 real

lambda = -2+1i;


w = 1;
w = w/abs(w)*0.9;
%w=1;


% L = x^2 + mu1*(real(lambda^2) + q + real(w*(q12_re+i*q12_im)) - x^2+y^2) +...
%           mu2*(abs(lambda)^4 + 2*abs(lambda)^2*q - (x^2+y^2)^2 + ...
%     real(lambda)^2*real(w)*q12_re - real(lambda)^2*imag(w)*q12_im - 2*real(lambda)*imag(lambda)*real(w)*q12_im - 2*real(lambda)*imag(lambda)*imag(w)*q12_re - imag(lambda)^2*real(w)*q12_re+imag(lambda)^2*imag(w)*q12_im     ...
%     + (1-abs(w)^2)*(q^2 - (q12_re^2 + q12_im^2))) + ...
%     mu3*(q^2 - (q12_re^2 + q12_im^2));

L= x^2 + mu1*(real(lambda^2) + q + real(w)*q12_re -imag(w)*q12_im -x^2+y^2) + mu2* ...
(    abs(lambda)^4 +2*abs(lambda)^2*q - (x^2+y^2)^2 + 2*(real(lambda^2) * (q12_re*real(w)- q12_im*imag(w))- imag(lambda^2)*(imag(w)*q12_re + real(w)*q12_im) ) ) +...
mu3*(q^2-(q12_re^2+q12_im^2));

r = solve(diff(L,mu1), diff(L,mu2), diff(L,mu3), diff(L,x), diff(L,q), diff(L,q12_re), diff(L,q12_im), x, q, q12_re, q12_im, mu1, mu2, mu3);
figure(1);
clf
hold on
rangexy = [-14 14 -14 14]; N=100;
for i=1:length(r.x)
    str = changedisplay(r.x(i));
    f = inline(['x+' str(7:end)], 'x','y');
    
    implot(f,rangexy,N,'b');
%     drawnow
%     pause(5)
%     i
end

%% vyuzitim derivace v matlabu :cervena 1 

clear all

syms  x real
syms  y real
syms q12_re real
syms q12_im real
syms q  real
syms mu1 real
syms mu2 real
syms mu3 real

lambda = -4+4i;


w = 1+3i;
w = w/abs(w)*.9;



L= -y^2 + mu1*(real(lambda^2) + q + real(w)*q12_re -imag(w)*q12_im -x^2+y^2) + mu2* ...
(    abs(lambda)^4 +2*abs(lambda)^2*q - (x^2+y^2)^2 + 2*(real(lambda^2) * (q12_re*real(w)- q12_im*imag(w))- imag(lambda^2)*(imag(w)*q12_re + real(w)*q12_im) )  - (1-abs(w)^2)*(q^2-(q12_re^2+q12_im^2))  ) +...
mu3*((q12_re^2+q12_im^2));

r = solve(diff(L,mu1), diff(L,mu2), diff(L,mu3), diff(L,y), diff(L,q), diff(L,q12_re), diff(L,q12_im), y, q, q12_re, q12_im, mu1, mu2, mu3);
figure(1);
clf
hold on
rangexy = [-14 14 -14 14]; N=100;
for i=1:length(r.y)
    str = changedisplay(r.y(i));
    f = inline(['y+' str(7:end)], 'x','y');    
    implot(f,rangexy,N,'b');
end
grid on
%% vyuzitim derivace v matlabu:cervena 2
clear all

syms  x y q12_re q12_im q  mu1 mu2 mu3 real

lambda = -1+2i;


w = 1+3i;
w = w/abs(w);
%w=1;


% L = x^2 + mu1*(real(lambda^2) + q + real(w*(q12_re+i*q12_im)) - x^2+y^2) +...
%           mu2*(abs(lambda)^4 + 2*abs(lambda)^2*q - (x^2+y^2)^2 + ...
%     real(lambda)^2*real(w)*q12_re - real(lambda)^2*imag(w)*q12_im - 2*real(lambda)*imag(lambda)*real(w)*q12_im - 2*real(lambda)*imag(lambda)*imag(w)*q12_re - imag(lambda)^2*real(w)*q12_re+imag(lambda)^2*imag(w)*q12_im     ...
%     + (1-abs(w)^2)*(q^2 - (q12_re^2 + q12_im^2))) + ...
%     mu3*(q^2 - (q12_re^2 + q12_im^2));

L= -y^2 + mu1*(real(lambda^2) + q + real(w)*q12_re -imag(w)*q12_im -x^2+y^2) + mu2* ...
(    abs(lambda)^4 +2*abs(lambda)^2*q - (x^2+y^2)^2 + 2*(real(lambda^2) * (q12_re*real(w)- q12_im*imag(w))- imag(lambda^2)*(imag(w)*q12_re + real(w)*q12_im) ) ) +...
mu3*(q^2-(q12_re^2+q12_im^2));

r = solve(diff(L,mu1), diff(L,mu2), diff(L,mu3), diff(L,y), diff(L,q), diff(L,q12_re), diff(L,q12_im), y, q, q12_re, q12_im, mu1, mu2, mu3);
figure(1);
clf
hold on
rangexy = [-14 14 -14 14]; N=100;
for i=1:length(r.y)
    str = changedisplay(r.y(i));
    f = inline(['y+' str(7:end)], 'x','y');
    
    implot(f,rangexy,N,'b');
end
